Transformation-aware Exploit Generation using a HI- CFG
نویسندگان
چکیده
A common task for security analysts is to determine whether potentially unsafe code constructs (as found by static analysis or code review) can be triggered by an attackercontrolled input to the program under analysis. We refer to this problem as proof-of-concept (POC) exploit generation. Exploit generation is challenging to automate because it requires precise reasoning across a large code base; in practice it is usually a manual task. An intuitive approach to exploit generation is to break down a program’s relevant computation into a sequence of transformations that map an input value into the value that can trigger an exploit. We automate this intuition by describing an approach to discover the buffer structure (the chain of buffers used between transformations) of a program, and use this structure to construct an exploit input by inverting one transformation at a time. We propose a new program representation, a hybrid informationand control-flow graph (HI-CFG), and give algorithms to build a HI-CFG from instruction traces. We then describe how to guide program exploration using symbolic execution to efficiently search for transformation pre-images. We implement our techniques in a tool that operates on applications in x86 binary form. In two case studies we discuss how our tool creates POC exploits for (i) a vulnerability in a PDF rendering library that is reachable through multiple different transformation stages and (ii) a vulnerability in the processing stage of a specific document format in AbiWord. Keywords-Exploit generation; binary analysis; symbolic execution; data structure analysis
منابع مشابه
HI-CFG: Construction by Binary Analysis and Application to Attack Polymorphism
Security analysis often requires understanding both the control and data-flow structure of a binary. We introduce a new program representation, a hybrid informationand control-flow graph (HI-CFG), and give algorithms to infer it from an instruction-level trace. As an application, we consider the task of generalizing an attack against a program whose inputs undergo complex transformations before...
متن کاملSoft Foundation Strengthening Effect and Structural Optimization of a New Cement Fly-ash and Gravel Pile-slab Structure
Reducing the settlements of soft foundation effectively is a critical problem of high-speed railway construction in China. The new CFG pile-slab structure composite foundation is a ground treatment technique which is applied on CFG pile foundation and pile-slab structure composite foundation. Based on the experience of constructing Beijing-Shanghai high-speed railway in China, the settlement-co...
متن کاملHigh-Throughput SNP Genotyping
Whole genome approaches using single nucleotide polymorphism (SNP) markers have the potential to transform complex disease genetics and expedite pharmacogenetics research. This has led to a requirement for high-throughput SNP genotyping platforms. Development of a successful high-throughput genotyping platform depends on coupling reliable assay chemistry with an appropriate detection system to ...
متن کاملApplication of the Schwarz-Christoffel Transformation in Solving Two-Dimensional Turbulent Flows in Complex Geometries
In this paper, two-dimensional turbulent flows in different and complex geometries are simulated by using an accurate grid generation method. In order to analyze the fluid flow, numerical solution of the continuity and Navier-Stokes equations are solved using CFD techniques. Considering the complexity of the physical geometry, conformal mapping is used to generate an orthogonal grid by means of...
متن کاملIE T - 0 5 - 0 2 Space - aware data flow analysis ∗
Data Flow Analysis (DFA for short) is a basic technique to collect statical information on run-time behaviors of programs: it is essential in optimizing compilers and is also used in type inference problems [1]. When performing a DFA, the program to be analysed is modeled by its Control Flow Graph (CFG) and by a set of transformation functions, one for each node in the graph. The set of program...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2013